Method and system for automatically generating a message flow diagram

ABSTRACT

A method and system automatically generate entries for a campaign message flow. The method comprises, responsive to a customer request, initiating a campaign, wherein the campaign includes interacting with subscribers via messages. The method comprises receiving customer-inputted parameters defining the campaign. The method comprises automatically generating campaign message flow entries, wherein each campaign message flow entry corresponds to an interaction between a server and a subscriber. The method comprises displaying the campaign message flow entries to the customer.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to provisional application No. 60/973,842entitled “MOBILE DOMAIN REGISTRY AND CONTENT PLATFORM”, filed Sep. 20,2007, and which is incorporated herein by reference.

This application is related to provisional application No. 60/800,276entitled “MESSAGING APPARATUS AND METHOD”, filed May 12, 2008, and whichis incorporated herein by reference.

BACKGROUND

Mobile device subscribers represent a large potential market forbusinesses. Businesses can market content, products, and services tomobile device subscribers. Such marketing efforts can include a ShortMessage Service (SMS) or Multimedia Message Service (MMS) messagecampaign.

A campaign begins with the business publicizing an activation step ofthe campaign. For example, the business can arrange for all messagesreceived at a predetermined short code with a predetermined keyword totrigger a campaign message flow.

The campaign message flow can include an introductory message with amenu of options sent to the subscriber as a reply message. Thesubscriber can select one or more of the options in a message. Optionscan include subscribing to a list, purchasing media content (includingvideo, pictures, software, and ring tones), participating in a poll,requesting a coupon, donating to charity, activating a mobile service,or similar options.

The business can configure a server in communications with the mobiledevices over a wireless network to manage and administrate the campaign.The server replies to subscriber activation requests and also interactswith subscribers after the campaign is initiated.

The campaign is defined with parameters received from a customer, forexample, a business or a media owner. Parameters can be inputted by thecustomer via a web interface at the server. It can be difficult for acustomer to visualize a message flow between the subscriber and theserver.

Thus, there is a need for automatically generating a message flow for acustomer defining campaign.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates an example server for generating a message flowdiagram.

FIG. 2A illustrates an example screenshot of a campaign managementwebpage.

FIG. 2B illustrates an example screenshot of a campaign setup webpage,including a message flow diagram of a campaign.

FIG. 3 illustrates an example procedure for generating a message flowdiagram of a campaign.

DETAILED DESCRIPTION

A method and system automatically generate a campaign message flow fordisplay to a customer creating a campaign. The campaign definesinteractions between a server and a subscriber, where the serverprovides a product or service from the customer to the subscriberresponsive to a subscriber request. The campaign message flow visuallyillustrates the interactions between the server and the subscriber forthe customer during campaign creation, allowing the subscriber to easilyvisualize the campaign message flow.

A short code is a special telephone number accessible to mobile phones,fixed phones, SMS, and MMS messages. The short code can be shorter thana full telephone number and selected for ease of communication andmemorization. The short code appears similar to a regular telephonenumber and is serviced by a telecommunications operator.

Keywords are collections of characters transmitted to the server by thesubscriber. Each keyword can be associated with a campaign. Sub-wordsare collections of characters transmitted to the server by thesubscriber, for example, to select a menu option from a menu. Eachsub-word can be associated with a keyword.

FIG. 1 illustrates an example server 100 for generating a message flowdiagram. The server 100 is configured to initiate and provide a campaignof interactions with subscribers. For example, the server 100 can be astandard computing server configured to communicate over a plurality ofnetworks and execute a campaign manager module 116. Alternatively, theserver 100 can be any computing device.

The server 100 includes a display 102. The display 104 can be equipmentthat displays viewable images, graphics, and text generated by theserver 100 to a user. For example, the display 102 can be a cathode raytube or a flat panel display such as a TFT LCD. The display 102 includesa display surface, circuitry to generate a viewable picture fromelectronic signals sent by the server 100, and an enclosure or case. Thedisplay 102 can interface with an input/output interface 108, whichconverts data from a central processor unit 112 to a format compatiblewith the display 102.

The server 100 includes one or more output devices 104. The outputdevice 104 can be any hardware used to communicate outputs to the user.For example, the output device 104 can be audio speakers and printers orother devices for providing output.

The server 100 includes one or more input devices 106. The input device106 can be any computer hardware used to receive inputs from the user.The input device 106 can include keyboards, mouse pointer devices,microphones, scanners, video and digital cameras, etc.

The server 100 includes an input/output interface 108. The input/outputinterface 108 can include logic and physical ports used to connect andcontrol peripheral devices, such as output devices 104 and input devices106. For example, the input/output interface 108 can allow input andoutput devices 104 and 106 to communicate with the server 100.

The server 100 includes a network interface 110. The network interface110 includes logic and physical ports used to connect to one or morenetworks. For example, the network interface 110 can accept a physicalnetwork connection and interface between the network and the workstationby translating communications between the two. Example networks caninclude Ethernet, or other physical network infrastructure.Alternatively, the network interface 110 can be configured to interfacewith wireless network. Alternatively, the server 100 can includemultiple network interfaces for interfacing with multiple networks.

As depicted, the network interface 110 communicates over a wired networkand a cellular network. It will be appreciated that the server 100 cancommunicate over any combination of wired, wireless, or other networks.

The server 100 includes a central processing unit (CPU) 112. The CPU 112can be an integrated circuit configured for mass-production and suitedfor a variety of computing applications. The CPU 112 can sit on amotherboard within the server 100 and control other workstationcomponents. The CPU 112 can communicate with the other workstationcomponents via a bus, a physical interchange, or other communicationchannel.

The server 100 includes memory 114. The memory 114 can include volatileand non-volatile memory accessible to the CPU 112. The memory can berandom access and provide fast access for graphics-related or othercalculations. In an alternative, the CPU 112 can include on-board cachememory for faster performance.

The server 100 includes a campaign manager module 116 stored in memory114. For example, the campaign manager module 116 can be as discussedbelow and be configured to initiate, manage, and administrate campaignson a wireless network. Campaigns involve interactions between the server100 and subscribers of the wireless network.

The server 100 includes mass storage 118. The mass storage 118 can bevolatile or non-volatile storage configured to store large amounts ofdata. The mass storage 118 can be accessible to the CPU 112 via a bus, aphysical interchange, or other communication channel. For example, themass storage 118 can be a hard drive, a RAID array, flash memory,CD-ROMs, DVDs, HD-DVD or Blu-Ray mediums.

The server 100 communicates with a network 120 via the network interface112. The network 120 can be any network configured to carry digitalinformation. For example, the network 114 can be an Ethernet network,the Internet, a wireless network, a cellular data network, or any LocalArea Network or Wide Area Network.

A terminal 122 communicates with the server 100 over the network 120.The terminal 122 can be a computing device such as a workstation, adesktop computer, a laptop computer, or any other computing device. Theterminal 122 can execute software applications configured to communicatewith the server 100. Alternatively, the terminal 122 can execute a webbrowser, and communicate with the server 100 through a web-basedinterface.

The terminal 122 is accessible to a customer 124. The customer 124 canbe an authorized administrator of a media owner or a party seeking toexecute a message campaign to subscribers of a network. The customer 124can be associated with a user account on the server 100. Each useraccount on the server 100 can be associated with sub-accounts.

The server 100 can also communicate with a cellular network 126 via thenetwork interface 112. The cellular network 126 can includeinfrastructure supporting a wireless carrier's coverage area, includingservers, communication trunks, cellular towers, etc. The cellularnetwork 126 can be operated and maintained by a wireless carrier.

A subscriber 130 can access the cellular network 126 via a mobile device128. For example, the mobile device 128 can be a cellular phone, awireless personal digital assistant, or any other device configured towirelessly communicate with the cellular network 126.

The customer 124 can initiate and manage a message campaign involvingthe subscriber 130 of a cellular network 126. In one example, thecampaign can include an initial notification text message sent to themobile device 128 with an offer to purchase a new ring tone. Thesubscriber 130 replies with an affirmative response, such as a textmessage with “Y” in the body. The server 100 receives the reply,processes a payment, and transmits the purchased ring tone to the mobiledevice 128.

FIG. 2A illustrates an example screenshot of a campaign managementwebpage. A campaign manager module, as discussed above, can provide aweb-accessible interface. The campaign management webpage can bedisplayed to a customer, displaying information on existing campaigns.The customer, as discussed above, can be any party wishing to initiateand manage a message campaign to wireless subscribers.

The screen shot includes a title 200. The title 200 can reflect thecampaign management webpage and include text, graphics, or other visibleportions.

The screen shot includes menu tabs 202. The menu tabs 202 allow thecustomer to navigate functionality offered by the campaign managermodule. Example functionality includes campaign manager, subscribers &messaging management, premium content management, and reportingmanagement. Other functionality includes browsing available support andaccount information. The campaign manager, as depicted in FIG. 2A,allows the customer to manage existing campaigns and create newcampaigns.

The screen shot includes sub-menu choices 204. The sub-menu choices 204offer additional functionality associated with the selected menu tab.Example functionality offered by the sub-menu choices 204 includesmanaging campaigns, widgets, and pages.

The screen shot includes a campaign section 206. The campaign sectionincludes existing campaigns and groups.

The screen shot includes campaign options 208. Campaign options 208include functionality related to campaigns, such as creating a newcampaign and creating a new group.

The screen shot includes a campaign column 210. The campaign column 210lists all current campaigns accessible by the user. For example, currentcampaigns can be created by the user or another user. Each campaigninvolves a campaign message flow corresponding to messages andinteractions between the server and the subscriber. FIG. 2A illustratesa campaign named “At Concert.”

The screen shot includes a campaign type 212. For example, campaign type212 can be one of: subscribing to a list, purchasing media content(including video, pictures, software, and ring tones), participating ina poll, requesting a coupon, donating to charity, activating a mobileservice, or similar options. For example, campaign type 212 can bedepicted as an icon.

The screen shot includes a campaign keyword 214. The campaign keyword214 can be the keyword that is monitored by the server. As discussedabove, in response to an invitation message, the subscriber can replywith a keyword included in the invitation message. The keyword is sentto a predetermined short code. The server monitors the short code formessages from the subscriber, and activates the campaign correspondingto the keyword.

The screen shot includes campaign actions 216. Campaign actions 216include functionality available to individual campaigns. For example,campaign actions 216 can include viewing the campaign, editing thecampaign, displaying campaign reports, initiating the campaign, anddeleting the campaign. The campaign is initiated by the user or at apredetermined trigger after it has been created, as discussed below.After initiation, the campaign is executed by the server and the initialinvitation message is transmitted to subscribers. The server monitorsthe associated short code for the associated keyword, and processes anyfurther interactions with the subscribers pursuant to campaignparameters.

The screen shot includes groups 218. For example, groups include one ormore related subscribers of a wireless carrier. Subscribers can berelated if they have opted into a subscriber list related to an interestor hobby. Subscriber lists can relate to music groups, a geographicallocation, a particular product or service, a club or other affiliatedsubscribers, or any other logical relation. Groups facilitate managementof subscribers in creating and administrating a message campaign bydefining the recipients of the message campaign.

The screen shot includes a group hierarchy 220. Each group in groups 218can be associated with a group hierarchy 220 that is displayed oncustomer-request. The group hierarchy 220 displays content and otheroptions associated with each group. The group hierarchy 220 includes agroup name of the associated group, any media or content associated withthe group, a subscription fee charged to each subscriber, an edit buttonand a delete button.

It will be appreciated that additional fields and information can bedisplayed under any of the above headings. Additional headings can alsobe used to convey other information to the customer. Additionalfunctionality can be added to improve the customer experience inmanaging campaigns.

FIG. 2B illustrates an example screenshot of a campaign setup webpage,including a message flow diagram of a campaign. A campaign managermodule, as discussed above, can provide a web-accessible interface toset up a new message campaign. The campaign setup webpage can bedisplayed to a customer responsive to a customer desire to create a newmessage campaign. The customer, as discussed above, can be any partywishing to initiate and manage a campaign to wireless subscribers.

The screen shot includes a title 250. The title 250 can reflect thecampaign setup webpage and include text, graphics, or other visibleportions.

The screen shot includes menu tabs 252. The menu tabs 252 allow thecustomer to navigate functionality offered by the campaign managermodule. Example functionality includes campaign manager, subscribers &messaging management, premium content management, and reportingmanagement. Other functionality includes browsing available support andaccount information. The campaign setup webpage, as depicted in FIG. 2B,allows the customer create a new campaign.

The screen shot includes sub-menu choices 254. The sub-menu choices 254offer additional functionality associated with the selected menu tab.Example functionality offered by the sub-menu choices 254 includesmanaging campaigns, widgets, and pages.

The screen shot includes an edit campaign section 256. The edit campaignsection 256 includes functionality to display input fields to receivecustomer-specified parameters defining a new campaign. For example, theinput fields can be as discussed below.

The screen shot includes a campaign name 258. The campaign name 258 canbe a text field for receiving a name of the campaign to be created.

The screen shot includes a campaign description 260. The campaigndescription 260 can be a text field for receiving a description of thecampaign to be created.

The screen shot includes a campaign structure 262. The campaignstructure 262 can be a hierarchical view of the campaign. For example,each campaign can be associated with a keyword, which activates acampaign message flow when received by the server. Each campaign canalso be associated with one or more subwords. Subwords can initiateother campaign message flows, for example, by offering other campaigns.As discussed above, a campaign can offer content such as files for amobile device, a poll, or other services.

The screen shot includes campaign controls 264. The campaign controls264 include customer-specified parameters associated with the campaign,keyword, or subword.

The screen shot includes a campaign keyword 266. The campaign keyword266 is associated with the new campaign set up by the customer.

The screen shot includes a subscription 268. The subscription 268 is anoption set by the customer defining whether a subscriber can subscribeto a group in response to the campaign. In one example, the subscriptionoption forces users to opt-in to a campaign for future mobile messaging.A subscriber must reply to an opt-in message to be added to a group orlist.

The screen shot includes an opt-in message 270. The opt-in message 270is displayed to a subscriber if the campaign allows subscription to agroup or list, as defined by subscription 268 above. The opt-in messagecan describe the group and display subscription information. Forexample, a subscriber can reply with a text message including “Y” in thebody.

The screen shot includes settings 272. The settings 272 further specifyparameters that define the new campaign. The settings 272 can include acheckbox that specifies no content is sent when a subscriber opts-in tothe group or list. The settings 272 can include a limit on a number ofsubscribers that will be accepted into the group or list.

The screen shot includes a schedule 274. The schedule 274 allows thecustomer to specify when content of the campaign will be sent. Forexample, the content can include a text message, multimedia files(backgrounds, ring tones, mobile device applications, etc.), or anyother file that can be sent to the user's mobile device.

The screen shot includes a content type 276. The content type 276 can bea drop down box with possible content types. For example, a campaign canprovide an interactive menu responsive to a subscriber opt-in.Alternatively, the campaign can provide media content or a set of pollquestions responsive to a subscriber opt-in.

The screen shot includes a welcome message 278. If the subscriber hasopted-in to a group, the welcome message 278 can include information onthe group.

The screen shot includes a number of menu items 280. If the campaignincludes a menu, as specified in 276, the campaign will transmit aninteractive menu to the subscriber responsive to an opt-in. The numberof menu items 280 allows the customer to specify a quantity of menuitems in the interactive menu transmitted to the subscriber.

The screen shot includes a menu 282. For each item in the menu,specified by 280, a menu item and a menu keyword is specified. Forexample, the menu item can be a title of content such as ring tones,audio files, graphics, or other files. For example, the menu keyword canbe transmitted to the server by the subscriber to select the associatedmenu item. The menu keyword can be automatically generated from thecampaign keyword and the menu item name.

The screen shot includes a campaign message flow 284. The campaignmessage flow 284 visually depicts interactions between the server andthe subscriber during the campaign.

The screen shot includes a campaign message flow entry 286. Entry 386states that a subscriber transmits the campaign keyword to apredetermined short code. Entry 286 can be generated from the campaignkeyword 266, discussed above.

It will be appreciated that a campaign can be initiated by otheractions. For example, the subscriber can call a predefined phone numberthat is configured to capture the subscriber's cellular phone number andan initiation request.

The screen shot includes a campaign message flow entry 288. Entry 288states that the server transmits the opt-in message to the subscriberresponsive to receiving the campaign keyword discussed in entry 286.Entry 288 can be generated from the opt-in message 270, discussed above.

The screen shot includes a campaign message flow entry 290. Entry 290states that the server transmits an interactive menu to the subscriberafter transmitting the opt-in message. Entry 290 can be generated fromthe welcome message 278, the number of menu items 280, and the menu 282.

The screen shot includes a campaign message flow entry 292. Entry 292states that the subscriber replies with a menu item selection afterreceiving the interactive menu from the server, discussed above. Entry292 can be generated from the menu 282.

The screen shot includes a campaign message flow entry 294. Entry 294states that the server transmits a confirmation message with thesubscriber's selection and any pricing information. Entry 294 can begenerated from the subscriber's selection in 292 and subscriptionpricing information.

The screen shot includes a campaign message flow entry 296. Entry 296states that the subscriber replies with a text message with “Y” in thebody. The subscriber thus confirms the selection and accepts thecharges.

The screen shot includes a campaign message flow entry 298. Entry 298states that the selected content is transmitted to the subscriber'smobile device.

The screen shot includes a campaign message flow entry 299. Entry 299states that a confirmation of the charges associated with the selectedcontent is transmitted to the subscriber.

FIG. 3 illustrates an example procedure for generating a message flowdiagram of a campaign. The procedure can execute on a server as depictedin FIG. 1. The procedure can execute in real-time responsive to acustomer creating or setting up a new campaign and display a visualrepresentation of a campaign message flow, including campaign messageflow entries to the customer. The campaign message flow can be asdepicted in FIG. 2B.

In 300, the server determines whether a customer request was received toset up or create a new campaign. The server provides a web interface toa campaign manager module via a network to the customer. For example,the web interface can be initiated when the customer logs into the webinterface and selects an option to create a new campaign.

If the request was received, the server proceeds to 302. If no requestwas received, the procedure remains at 300 to wait.

In 302, the server optionally pre-populates the new campaign from atemplate campaign. The customer can select a provided template campaignfrom which the new campaign will be created. For example, templatecampaigns can include frequently-used campaigns such as an offer to sella ring tone or other media content, a poll or survey, a notification ofa new product or service, a coupon offer, or any other potentialcampaigns.

In 304, the server initiates the new campaign. The new campaign iscreated in memory accessible to the server and the campaign parametersare initialized.

In 306, the server determines whether parameters were received from thecustomer. The customer is prompted for campaign parameters via the webinterface from the server. The customer inputs campaign parameters viathe web interface.

The template campaigns from above can be associated with campaignparameters that are copied into the new campaign. The customer can thencustomize the new campaign by modifying the campaign parameters.

Alternatively, a campaign parameter can be a predefined default valuewhen the new campaign is initiated. The customer can modify the defaultcampaign parameter.

If parameters were received, the server proceeds to 308. If parameterswere not received, the server remains at 306 to wait.

In 308, the server generates campaign message flow entries responsive toparameters entered by the customer. As discussed above, a campaignmessage flow visually depicts the campaign interactions withsubscribers. Each campaign message flow entry is generated from adefault or from customer-inputted parameters as discussed above.

In 310, the server displays the campaign message flow entries to thecustomer. The campaign flow entries are displayed via the web interface.For example, the web interface can be a Java applet, and dynamicallydisplay new campaign message flow entries are the entries are generatedresponsive to customer-inputted parameters.

In one embodiment, the campaign message flow entries can beautomatically generated as campaign parameters are entered. Eachcampaign message flow entry can be generated in real-time as parametersare received from the customer.

Thus, the entries can be displayed substantially in real time responsiveto the customer inputs. This allows the campaign message flow to evolveas the customer adds steps, deletes steps, or otherwise edits thecampaign. The campaign message flow thus changes in real time responsiveto customer-inputs.

In another embodiment, the campaign message flow entries can begenerated responsive to a customer submission of campaign parameters.

In 312, the server optionally stores the campaign parameters in anaccessible storage medium. The campaign parameters define the newcampaign and can be saved to volatile and non-volatile memory. Thecampaign parameters can further be backed up for redundancy.

In 314, the server optionally executes the campaign for a subscriberresponsive to subscriber input. The customer can activate the newcampaign for execution by the server. The server interacts with thesubscriber in a manner defined by the campaign parameters, for example,by beginning with an opt-in or introductory text message, as discussedabove. The subscriber can respond with a request to subscribe, and theserver will service the request.

In 316, the server exits the procedure.

As discussed above, one embodiment of the present invention can be amethod for generating a campaign message flow. The method comprises,responsive to a customer request, initiating a campaign, wherein thecampaign includes interacting with a subscriber via messages. The methodcomprises, responsive to receiving customer-inputted parameters definingthe campaign, generating campaign message flow entries in substantiallyreal time from the customer-inputted parameters, wherein each campaignmessage flow entry corresponds to an interaction with the subscriber.The method comprises displaying each campaign message flow entry to thecustomer when generated. The method comprises pre-populating theparameters and the campaign message flow from a template campaign. Themethod comprises storing the parameters in an accessible storage medium.The method comprises executing the campaign responsive to a subscriberrequest, wherein subscriber inputs and server outputs correspond to thecampaign message flow. The campaign message flow entry can be at leastone of: subscriber-inputted keywords, subscriber-inputted short numbers,server-outputted menus, and server-outputted confirmations. Theparameters can include at least one of: a keyword, opt-in message,scheduling, content to be sent, confirmation message, menu items, andpointers to other sub-words. The customer request and parameters can bereceived via a web interface and the campaign message flow is displayedvia the web interface.

Another embodiment of the present invention can be a system forgenerating a campaign message flow. The system can include a server incommunication with a client over a network. The server can be configuredto, responsive to a customer request, initiate a campaign, wherein thecampaign includes interacting with subscribers via messages. The servercan be configured to receive customer-inputted parameters defining thecampaign. The server can be configured to automatically generatecampaign message flow entries, wherein each campaign message flow entrycorresponds to an interaction between a server and a subscriber. Theserver can be configured to display the campaign message flow entries tothe customer. The server can be configured to pre-populate theparameters and the campaign message flow from a template campaign. Theserver can be configured to store the parameters in an accessiblestorage medium. The server can be configured to execute the campaignresponsive to a subscriber request, wherein subscriber inputs and serveroutputs correspond to the campaign message flow. A campaign message flowentry can be at least one of: subscriber-inputted keywords,subscriber-inputted short numbers, server-outputted menus, andserver-outputted confirmations. The parameters include at least one of:a keyword, opt-in message, scheduling, content to be sent, confirmationmessage, menu items, and pointers to other sub-words. The customerrequest and parameters can be received via a web interface and thecampaign message flow is displayed via the web interface.

Another embodiment of the present invention can be a computer-readablemedium including instructions adapted to execute a method for generatinga campaign message flow. The method comprises, responsive to a customerrequest, initiating a campaign, wherein the campaign includesinteracting with subscribers via messages. The method comprisesreceiving customer-inputted parameters defining the campaign. The methodcomprises automatically generating campaign message flow entries,wherein each campaign message flow entry corresponds to an interactionbetween a server and a subscriber. The method comprises displaying thecampaign message flow entries to the customer. The method comprisespre-populating the parameters and the campaign message flow from atemplate campaign. The method comprises storing the parameters in anaccessible storage medium. The method comprises executing the campaignresponsive to a subscriber request, wherein subscriber inputs and serveroutputs correspond to the campaign message flow. The campaign messageflow entry can be at least one of: subscriber-inputted keywords,subscriber-inputted short numbers, server-outputted menus, andserver-outputted confirmations. The parameters can include at least oneof: a keyword, opt-in message, scheduling, content to be sent,confirmation message, menu items, and pointers to other sub-words. Thecustomer request and parameters can be received via a web interface andthe campaign message flow is displayed via the web interface.

It will be appreciated to those skilled in the art that the precedingexamples and embodiments are exemplary and not limiting to the scope ofthe present invention. It is intended that all permutations,enhancements, equivalents, combinations, and improvements thereto thatare apparent to those skilled in the art upon a reading of thespecification and a study of the drawings are included within the truespirit and scope of the present invention. It is therefore intended thatthe following appended claims include all such modifications,permutations and equivalents as fall within the true spirit and scope ofthe present invention.

1. A method for generating a campaign message flow, comprising:responsive to a customer request, initiating a campaign, wherein thecampaign includes interacting with a subscriber via messages; responsiveto receiving customer-inputted parameters defining the campaign,generating campaign message flow entries in substantially real time fromthe customer-inputted parameters, wherein each campaign message flowentry corresponds to an interaction with the subscriber; displaying eachcampaign message flow entry to the customer when generated.
 2. Themethod of claim 1, further comprising: pre-populating the parameters andthe campaign message flow from a template campaign.
 3. The method ofclaim 1, further comprising: storing the parameters in an accessiblestorage medium.
 4. The method of claim 1, further comprising: executingthe campaign responsive to a subscriber request, wherein subscriberinputs and server outputs correspond to the campaign message flow. 5.The method of claim 1, wherein a campaign message flow entry is at leastone of: subscriber-inputted keywords, subscriber-inputted short numbers,server-outputted menus, and server-outputted confirmations.
 6. Themethod of claim 1, wherein the parameters include at least one of: akeyword, opt-in message, scheduling, content to be sent, confirmationmessage, menu items, and pointers to other sub-words.
 7. The method ofclaim 1, wherein the customer request and parameters are received via aweb interface and the campaign message flow is displayed via the webinterface.
 8. A system for generating a campaign message flow,comprising: a server in communication with a client over a network, theserver configured to responsive to a customer request, initiate acampaign, wherein the campaign includes interacting with subscribers viamessages, receive customer-inputted parameters defining the campaign,automatically generate campaign message flow entries, wherein eachcampaign message flow entry corresponds to an interaction between aserver and a subscriber, display the campaign message flow entries tothe customer.
 9. The system of claim 8, wherein the server is furtherconfigured to pre-populate the parameters and the campaign message flowfrom a template campaign.
 10. The system of claim 8, wherein the serveris further configured to store the parameters in an accessible storagemedium.
 11. The system of claim 8, wherein the server is furtherconfigured to execute the campaign responsive to a subscriber request,wherein subscriber inputs and server outputs correspond to the campaignmessage flow.
 12. The system of claim 8, wherein a campaign message flowentry is at least one of: subscriber-inputted keywords,subscriber-inputted short numbers, server-outputted menus, andserver-outputted confirmations.
 13. The system of claim 8, wherein theparameters include at least one of: a keyword, opt-in message,scheduling, content to be sent, confirmation message, menu items, andpointers to other sub-words.
 14. The system of claim 8, wherein thecustomer request and parameters are received via a web interface and thecampaign message flow is displayed via the web interface.
 15. Acomputer-readable medium including instructions adapted to execute amethod for generating a campaign message flow, the method comprising:responsive to a customer request, initiating a campaign, wherein thecampaign includes interacting with subscribers via messages; receivingcustomer-inputted parameters defining the campaign; automaticallygenerating campaign message flow entries, wherein each campaign messageflow entry corresponds to an interaction between a server and asubscriber; displaying the campaign message flow entries to thecustomer.
 16. The medium of claim 15, the method further comprising:pre-populating the parameters and the campaign message flow from atemplate campaign.
 17. The medium of claim 15, the method furthercomprising: storing the parameters in an accessible storage medium. 18.The medium of claim 15, the method further comprising: executing thecampaign responsive to a subscriber request, wherein subscriber inputsand server outputs correspond to the campaign message flow.
 19. Themedium of claim 15, wherein a campaign message flow entry is at leastone of: subscriber-inputted keywords, subscriber-inputted short numbers,server-outputted menus, and server-outputted confirmations.
 20. Themedium of claim 15, wherein the parameters include at least one of: akeyword, opt-in message, scheduling, content to be sent, confirmationmessage, menu items, and pointers to other sub-words and the customerrequest and parameters are received via a web interface and the campaignmessage flow is displayed via the web interface.